home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 25 / Cream of the Crop 25.iso / os2 / mbase101.zip / MaxBase.doc < prev    next >
Text File  |  1997-04-27  |  13KB  |  316 lines

  1. This is the official documentation for MaxBase V 3
  2.  
  3. Index:
  4.  
  5.   1 .. What Is MaxBase?
  6.   2 .. Features available
  7.   3 .. Menu Structure
  8.   4 .. Limitations
  9.   5 .. Legal Stuff
  10.   6 .. Frequently Asked Questions:
  11.        - How can I move the buttons in the panels from bottom to top?
  12.        - How can I avoid users messing up with my db?
  13.        - How can I translate MaxBase in my language?
  14.        - I have heard that I can print and view images. How do I?
  15.        - How much can I customize it? Can I have two languages at once?
  16.  
  17.  
  18.  
  19. 1 What is MaxBase?
  20. ------------------
  21.  
  22. MaxBase is a graphical tool that allows you to manage your 
  23. databases, both as a database administrator (working with DBs structure), 
  24. and as a user. Of course the db created with MaxBase are compatible with 
  25. the RXDbase class, and vice versa, since MaxBase is only a front end 
  26. to the RXDbase APIs. 
  27. At the moment, nearly all of the RXDbase features are implemented.
  28.  
  29. MaxBase can be useful if you want to create a DB without 'hardwiring' it
  30. into your application. When you create a new DB with MaxBase, you actually 
  31. create a .DAT and some (at least one) .IDX files.
  32. Ship these all with your application, and simply connect to them with a 
  33. xxx.connect(rFileName) in your source.
  34.  
  35. MaxBase can be used as a stand-alone application, also, and so now you've
  36. found a truly portable phone book (and now it's fast, too). :)
  37.  
  38. Notice: Sportello, the net-aware application (similar to MaxBase, but network-oriented)
  39. has the same capabilities as MaxBase, only lacks the functions that allow to manage the
  40. db structure and login/logout.
  41.  
  42.  
  43.  
  44. 2 Features available:
  45. ---------------------
  46.  
  47. First of all, let's say that not all the features are available at any
  48. time; they show up only when they make sense (i.e. you won't see 
  49. the 'logout' function if you're not logged in to a database).
  50.  
  51. Also, MaxBase saves (in the current directory) its position so the
  52. next time it is started it will show up at the same location, with the
  53. same size.
  54.  
  55. The following keyboard shortcuts are active in the list which presents
  56. the records:
  57.  
  58. .) When presented with more than one entry field (eg. when entering
  59. records data), use the keys PAGE UP and PAGE DOWN to move from
  60. one line to the previous or the next.
  61.  
  62. .) double-clicking on an item brings you directly into the 'modify record'
  63. layout.
  64.  
  65. .) Selecting a record and then selecting another one, while pressing
  66. the shift key selects also all the records between the first and the
  67. last that have been clicked.
  68.  
  69. .) They key CTRL+END is used as a shortcut for "store" when adding or
  70. modifying records, "set filter" when setting filters.
  71. Similarly, CTRL+HOME aborts the very same operations (much like hitting
  72. "cancel" or equivalent)
  73.  
  74. .) The CTRL+A keys bring you directly into the 'add record'
  75. layout.
  76.  
  77. .) The CTRL+C keys, when used during record adding or modifying,
  78. copy the record which was last stored into disk into the
  79. current fields.
  80.  
  81. .) The CTRL+D keys bring you directly into the 'delete records'
  82. layout.
  83.  
  84. .) The CTRL+F keys bring you directly into the 'filter'
  85. layout.
  86.  
  87. .) The CTRL+O keys bring you directly into the 'order'
  88. layout.
  89.  
  90.  
  91. Also, you can select which of the standard MaxBase's functions are to be
  92. activated upon MaxBase startup. If MaxBase finds a file called maxbase.mnu
  93. then it reads all the strings in it, and labels buttons and text bits
  94. after those strings. If a button string is set to '-' (the dash character,
  95. without the single-quotes), then that button is disabled. If maxbase.mnu
  96. doesn't exist, then the default strings will be used.
  97.  
  98. NOTE: maxbase.mnu files for Unix and Mac (\n and \r line-terminated)
  99. are stored in maxbase.*.unix and maxbase.*.mac where * = a language
  100. (eg eng = english or ita = italian).
  101. Just copy one of them into maxbase.mnu.
  102.  
  103. NOTE-2: All the messages and buttons presented to the user are configurable
  104. through the customization of maxbase.mnu ASCII file, and that means also 
  105. that you can _translate_ maxbase from english to other languages (as 
  106. examples I've put in this package the english and the italian translations; 
  107. if you translated MaxBase into another language let me know!).
  108.  
  109. From RXDbase 0.90 on, I started using Taligent's widgets. You can browse your
  110. data with the vertical and horizontal scrollbars, and you can also resize
  111. the columns width by dragging the column separator in the maint caption for 
  112. that column.
  113.  
  114. MaxBase can be given a parameter in the command line: the name of the
  115. database to log in to at startup (trailing .dat extension NEEDED).
  116. E.g.: 'java MaxBase imgs.dat' or (OS/2's 1.0.1 Java) 'javapm MaxBase imgs.dat'
  117.  
  118.  
  119. Just another thing: you can expand MaxBase functionalities through
  120. the use of plug-ins. Refer to the plugins packages for more details.
  121. The printing functions are provided as a plugin, and must be extracted
  122. from the plugin.zip (macplug.zip, unixplug.zip) package.
  123. (The plugin.ini file gets read *in the current directory* if it's present)
  124.  
  125.  
  126. ".dbf->.dat" lets you convert a DB III/IV file into RXDbase native format.
  127.  
  128. ".dat->.dbf" converts a RXDbase native file into a DBIII/IV archive.
  129.  
  130. "Login" and "Logout" functions let you connect to a database, and the 
  131. records that this latter contains will be displayed .
  132.  
  133. "Del DB" lets you delete from the HD the db on which you're working.
  134.  
  135. "New DB" is meant for creation of a new database.
  136.  
  137. "Pack DB" lets you pack the archive: it deletes the records that are 
  138. marked as 'discarded' and rebuilds all the indexes. It may take some
  139. time.
  140.  
  141. "Add Fld" - "Del Fld" allow you to add/delete fields from the archive
  142. while it is still open. Warning: you must have at least one indexed
  143. field on the archive (you won't be able to delete the last indexed
  144. field).
  145.  
  146. "Sel All" - "Des All" do selects/deselect all the records that are loaded
  147. into MaxBase.
  148.  
  149. "Mod Index" lets you modify the indexing strategy for a field; it works
  150. similarly to "Add/Del Fld".
  151.  
  152. "Mod fld name" lets you change a field name.
  153.  
  154. "Mod fld length" lets you change a field length.
  155.  
  156. "Property" brings up a panel where you can state if you want to load for 
  157. display all the articles in the archive or the first 50 only. It defaults
  158. to the first 50, and helps keeping MaxBase quick (it will be more useful
  159. when the 'search' functions will be introduced).
  160.  
  161. "Add" - "Modify" - "Delete" do what the names suggest; they work with records.
  162.  
  163. "Form View" lets you see the currently selected record in, guess what, 
  164. a form view. This can be very useful, for example if you have records 
  165. which length makes them not to appear fully in the one-line view, or if
  166. you need to put in the clipboard the contents of a field (E-mail addresses
  167. or home page URLs come to mind).
  168.  
  169. "Order By" Lets you choose which index to order the db on.
  170.  
  171. "Refresh Now" refresh the current view with the contents of the db stored on
  172. disk. Useful if you are using the "First 50" visualization strategy and delete
  173. a lot of records.
  174.  
  175. "Set Filter" Lets you set filtering conditions for the records showed.
  176. A note about filtering:
  177.  Filter sentences are divided by the .&. token, which means "logical AND".
  178.  You can setup as many as 100 of them.
  179.  
  180. From RXDbase.doc (adapted):
  181. -----------
  182. Operators recognized: >,>=,<,<=,=,<>.
  183. Wildcards are allowed only for the = and <> operators, and they are represented by
  184. the symbol '*', which means "every number of any character".
  185. So, Ro* can be Robert, Ronald, etc. 
  186.     *t can be Matt, Robert, etc.
  187.     M*t can be Matt, mount, etc. (The search is always case-insensitive)
  188.  
  189. You can use only one '*' on a given filter (e.g. you can't query for "Name = *u*i*l*"),
  190. with the notable exception of the form *value*, which means "find a substring anywhere
  191. that is equal to 'value'".
  192. Example: "Telephone = *555*" will search for all phone numbers with a 555 in them.
  193.  
  194. A special operator is "!all" (without quotes): specifying !all as a field name,
  195. that condition will be extended to all the fields.
  196.  
  197. If you specify a filter condition when another one is in use, the first one will be
  198. dropped, and the most recent one will be used.
  199.  
  200. Passing as a value the null string will reset the filter conditions.
  201. -----------
  202. Example of valid filter sentence:
  203. Name=M* .&. Surname =Johnson .&. Age >25 .&. Sex = M
  204.  
  205.  
  206.  
  207.  
  208. 3 Menu Structure
  209. ----------------
  210.  
  211. Main Panel   : 'Tools..'  'Records..'  'Login|Logout'  'Sel All'  'Des All'  'Order By..'  <Plugins,if any>
  212.  
  213. Tools Panel  : 'DB Related' 'field related' 'DB utils' 'Properties' 'Main Panel..'
  214.  
  215. DB Related Panel: 'New DB' 'Del DB' 'Pack DB' 'Tools..'
  216.  
  217. Field Related Panel: 'Add Fld' 'Del Fld' 'Mod Index' 'Mod fld name' 'Mod fld length' 'Tools..'
  218.  
  219. DB Utils panel: '.dbf->.dat' '.dat->.dbf' 'Tools..'
  220.  
  221. Records Panel: 'Add' 'Modify' 'Delete' 'Set Filter' 'Form View' 'Refresh Now' 'Main Panel..'
  222.  
  223.  
  224.  
  225. 4 Limitations: (these may be removed as MaxBase is enhanced)
  226. --------------
  227.  
  228. You can create only DBs with <100 fields, although you can LOAD db with
  229. more than 99 fields.
  230.  
  231. Record undelete is not supported.
  232.  
  233.  
  234.  
  235. 5 Legal Stuff
  236. -------------
  237.  
  238. MaxBase is a graphic frontend for the RXDbase class. It follows the RXDbase
  239. licensing schema. See RXDbase.doc for details.
  240. MaxBase is (c) Max Marsiglietti 1996, 97.
  241.  
  242.  
  243.  
  244. 6 Frequently Asked Questions
  245. ----------------------------
  246.  
  247. Q) How can I move the buttons in the panels from bottom to top?
  248.  
  249. A) Settings for placements of buttons:
  250. maxbase.mnu, 2nd line reads "South". Change it to North, East, West to see
  251. what is the best for you. (North and South are the two that work well now).
  252.  
  253.  
  254. Q) How can I avoid users messing up with my db?
  255.  
  256. A) If you want to customize MaxBase, remember that if you put a dash ("-"
  257. without the quotes) on a button label in the maxbase.mnu text file, that
  258. button will be disabled (useful if you want to put the db in a computer
  259. on a fair or on a show room, or avoid your cousins/sons/etc hacking it).
  260. NOTE: maxbase.mnu files for Unix and Mac (\n and \r line-terminated)
  261. are stored in maxbase.*.unix and maxbase.*.mac where * = a language
  262. (eg eng = english or ita = italian). 
  263. Just copy one of them into maxbase.mnu.
  264.  
  265.  
  266. Q) How can I translate MaxBase in my language?
  267.  
  268. A) maxbase.eng and maxbase.ita can be copied/renamed to maxbase.mnu;
  269. eg if you 'copy maxbase.ita maxbase.mnu' you'll see all the text strings
  270. turning suddendly into italian words (yes I am italian). To create a new
  271. language just copy maxbase.eng into, as an example, maxbase.de and translate
  272. all the text that's there in German. Copy maxbase.de into maxbase.mnu and
  273. your menus, labels, buttons, everything will show up in German.
  274. Don't forget to send me a copy of your maxbase.mylanguage, so I can include
  275. it in newer releases!
  276.  
  277.  
  278. Q) I have heard that I can print and view images. How do I?
  279.  
  280. A) unzip plugins.zip (or macplug.zip or unixplug.zip) 
  281. and you'll find two new buttons in the main panel after a DB has 
  282. been loaded: view text/image and print.
  283.  
  284. View text/image works only with dbs which have the words
  285. "image" and/or "text" in some field's name, and show an applet which
  286. sports the image for that record (field with IMAGE in its name) along 
  287. with the text for that record (field with TEXT in its name).
  288.  
  289. Printing is a bit easier, because you basically select some records, push
  290. the "print records" button and then you're set. In the directory where MaxBase
  291. has been started you'll find a file called "printme.txt". Print it. :)
  292.  
  293.  
  294. Q) How much can I customize it? Can I have two languages at once?
  295.  
  296. A) MaxBase looks for plugins and .mnu files in the directory where it is
  297. launched, so you must pay attention to that (also, the position/size of the
  298. window gets saved in that directory). You can use this info to make it
  299. work for you: call 'java MaxBase' from the directory where you did put a database
  300. plus its own plugins and .mnu and .ini files and you will have a database 
  301. customized with those settings (.mnu, plugins, .inis).
  302.  
  303. More in detail:
  304.  
  305. plugin.ini  -- 2 lines each plugin: 
  306.                  the 1st is the text to show in the button,
  307.                  the 2nd is the command to issue when the button is pushed.
  308. maxbase.ini -- position, size of the window, number of records to be loaded
  309.                at once, active query, index last used.
  310. maxbase.mnu -- menus, labels, buttons, messages, etc.(*)
  311.  
  312. (*) If maxbase.mnu can't be found, MaxBase proceeds with the default
  313. action: english language, all buttons enabled.
  314.  
  315. Sayonara!
  316.